[PHP] Associating a Function to Fire on session_start()?
Posted
by user317808
on Stack Overflow
See other posts from Stack Overflow
or by user317808
Published on 2010-06-16T13:53:15Z
Indexed on
2010/06/16
14:42 UTC
Read the original article
Hit count: 99
Hi,
I've searched the web but haven't been able to find a solution to the following challenge:
I'd like to somehow associate a function that executes when session_start
is called independent of the page session_start
is called in. The function is intended to restore constants I've stored in $_SESSION
using get_defined_constants()
so that they're available again to any PHP page.
This seems so straightforward to me but I'm pretty sure the PHP Session extension doesn't support the registration of user-defined events. I was wondering if anyone might have insight into this issue so I can either figure out the solution or stop trying.
Ideally, I'd like to just register the function at run-time like so:
$constants = get_defined_constants();
$_SESSION["constants"] = $constants["user"];
function event_handler () {
foreach ($_SESSION["constants"] as $key => $value) {
define($key, $value);
}
}
register_handler("session_start", "event_handler");
So in any webpage, I could just go:
session_start();
and all my constants would be available again.
Any help would be greatly appreciated.
© Stack Overflow or respective owner